/**
 * 模块加载区域
 * */
const gulp = require("gulp");
//启动服务器（并能时时同步）
const connect = require("gulp-connect");
//合并文件
//const concat = require("gulp-concat");
//编译scss文件为css
//const sass = require('gulp-sass');
//sass.compiler = require('node-sass');
//编译image文件
const imagemin = require('gulp-imagemin');
//压缩js文件
//const uglify = require('gulp-uglify');
//const pipeline = require('readable-stream').pipeline;
//压缩sass文件
//let cleanCSS = require('gulp-clean-css');
//获取变量路径
//const jsJSON  = require("./conf/index").js;
//const scssJSON  = require("./conf/index").scss;
const {
	js,
	scss
} = require("./conf/index");
const {
	mergeMyjs,
	mergeMyscss
} = require("./utils/util");
//获取js文件路径的数组
//let jsTaskArray = [];
//let scssTaskArray = [];
let   [jsTaskArray,scssTaskArray] = []
/**
 * 功能定义区域
 * */
function init(){
	jsTaskArray = mergeMyjs(js,"js-build-","dist");
	scssTaskArray = mergeMyscss(scss,"scss-build-","dist");
}



////定义将js文件复制到dev工作文件夹中的命令(循环变量产生命令)
//function mergeMyjs(json){
//	for(let attr in json){
//		jsTaskArray.push("js-build-"+attr);
//		console.log(jsTaskArray)
//		gulp.task("js-build-"+attr,function(){
//			return gulp.src([json[attr].src+"*.js"])
//						.pipe(concat(attr+".js"))
//						.pipe(uglify())
//						.pipe(gulp.dest("./dist/js"))
//		})
//	}
//}
//
////定义将scss文件复制到dev工作文件夹中的命令(循环变量产生命令)
//function mergeMyscss(json){
//	for(let attr in json){
//		scssTaskArray.push("scss-build-"+attr);
//		gulp.task("scss-build-"+attr,function(){
//			return gulp.src([json[attr].src+"*.+(scss|sass)"])
//						.pipe(concat(attr+".scss"))
//						.pipe(sass())
//						.pipe(cleanCSS({debug: true}, (details) => {
//                            console.log(`${details.name}: ${details.stats.originalSize}`);
//                            console.log(`${details.name}: ${details.stats.minifiedSize}`);
//                        }))
//						.pipe(gulp.dest("./dist/css"))
//		})
//	}
//}


/**
 * 指令定义区域
 * */
//定义将html文件复制到dev工作文件夹中的命令
gulp.task("html-build",function(){
	return gulp.src(["./src/*.html"])
				.pipe(gulp.dest("./dist"))
})
gulp.task("image-build",function(){
	return gulp.src(["./src/image/*"])
				.pipe(gulp.dest("./dist/image"));
})
gulp.task("json",()=>{
	return gulp.src("./src/data/*")
			.pipe(gulp.dest("dist/static"))
})
init();
//存放命令数组，便于执行
gulp.task("js-build",jsTaskArray);
gulp.task("scss-build",scssTaskArray);

gulp.task("gulp-build",["html-build","js-build","json","image-build","scss-build"]);


















